一、從天氣 API 學到了什麼?
這次使用的天氣 API 是 Open-Meteo,
和前面使用的書籍 API、電影 API 一樣,
都是透過 Web API 的方式取得資料。
在實際操作的過程中,
我們先使用天氣 API 查詢一個地點的資料,
再修改經緯度,分別查詢台北、台中和高雄。
透過這幾次操作可以看到只要修改查詢的參數,
就能取得不同地點的資料。
這次也接觸到了幾個之前沒有實際使用過的資料,
例如 latitude、longitude、temperature_2m、relative_humidity_2m 和 wind_speed_10m。
除了看到目前的天氣數值,
也可以看到 API 回傳的資料還包含時間、時區、海拔高度等資訊。
這次也和前面的 API 一樣再次看到 JSON 資料,
透過 Day 23 和 Day 24 的分析,
了解到 JSON 不只是把資料全部放在一起,
而是會按照不同的結構整理資料。
例如 current_units 和 current 都是物件,
current 裡面則包含目前的時間、溫度、濕度和風速等資料。
⸻
二、和前面的概念串起來
到了這裡可以把前面幾個 API 的操作方式串起來看。
基本的流程其實都差不多是
Endpoint → Parameter → GET Request → Response → JSON → 分析需要的資料
需要先找到 API 的 Endpoint,
也就是要向哪一個網址提出請求。
接著根據 API 的規則加入 Parameter。
像這次的天氣 API就需要利用經緯度來指定查詢的位置。
設定好參數之後,
透過 GET Request 發送請求,
API 就會回傳 Response。
回傳的結果通常會以 JSON 格式呈現,
而我們就可以從 JSON 裡面找到自己需要的資料。
例如這次查詢台中的天氣時,
API 回傳的資料中可以找到:
"current": {
"time": "2026-09-20T05:30",
"temperature_2m": 33.5,
"relative_humidity_2m": 48,
"wind_speed_10m": 14.9
}
從這段資料就可以知道查詢時間,
以及當時的溫度、相對濕度和風速。
前面學習書籍 API 和電影 API 時也是一樣的概念,
只是每一個 API 提供的資料不同。
API 的重點並不是記住某一個特定網站的資料,
而是理解「如何提出請求,以及如何閱讀回傳結果」。
⸻
三、感想
這次實際操作天氣 API 後,
我覺得比一開始接觸 Web API 時更容易理解 API 的運作方式。
一開始看到一大串 JSON 時,
可能會覺得資料很多不知道要從哪裡看起。
不過經過前面幾次練習後,
可以先找到最外層的結構再慢慢往裡面看,
就比較容易找到自己需要的資料。
而且這次直接比較台北、台中和高雄,
也可以很明顯看到同一個 API 在不同參數下會回傳不同結果。
API 本身沒有改變,改變的是我們送出的查詢條件。
從書籍、電影到天氣,
雖然三種 API 提供的內容完全不同,
但操作的基本概念其實很接近。
這也讓我比較能理解前面幾天一直提到的 Endpoint、Parameter、Request、Response 和 JSON 到底是怎麼連在一起的。
⸻
四、總結
這一階段的天氣 API 學習,
從實際查詢不同地點的天氣開始,
練習使用 API 的參數取得資料,
再進一步分析 JSON 的結構與內容。
目前為止已經實際操作過三種不同類型的公開 API:
雖然每個 API 的資料內容不同,
但基本的使用方式都有相似的流程。
透過這三個 API 的實際操作,
也讓我從原本只知道 API 是「可以取得資料的東西」,慢慢開始理解它實際上是如何透過 Request 和 Response 傳遞資料。
前面幾天比較偏向認識和分析單一 API,
接下來就可以把這些學過的內容放在一起比較,
看看不同 API 在 Endpoint、Parameter、JSON 結構以及資料內容上有哪些相同與不同的地方。